package org.cli.admin.cli;

import jline.ConsoleReader;

import org.cli.admin.cli.printer.ConsolePrinter;
import org.fusesource.jansi.AnsiConsole;

import com.beust.jcommander.JCommander;
import com.google.inject.AbstractModule;

public class CLIModule extends AbstractModule{

	@Override
	protected void configure() {
		AnsiConsole.systemInstall();
        bind(CLIManager.class).asEagerSingleton();
        bind(CLIListener.class).asEagerSingleton();
        bind(JCommander.class).asEagerSingleton();
        bind(ConsolePrinter.class).asEagerSingleton();
        bind(ConsoleReader.class).toProvider(ConsoleReaderProvider.class).asEagerSingleton();
	}

}
